package com.ruoyi.business.sundry.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.ruoyi.business.base.JoBaseService;
import com.ruoyi.business.base.PageParam;
import com.ruoyi.business.sundry.domain.JbRawMaterialAudit;
import com.ruoyi.business.sundry.domain.JbRawMaterialAuditRecord;
import com.ruoyi.business.sundry.domain.JbRawMaterialPrice;
import com.ruoyi.business.sundry.domain.vo.JbMaterialPriceImportAdd;

import java.util.List;

/**
 * 原材料价格Service接口
 * 
 * @author ruoyi
 * @date 2024-10-11
 */
public interface JbRawMaterialPriceService extends JoBaseService<JbRawMaterialPrice>
{
    /**
     * 原材料价格查询
     * @param page
     * @param jbRawMaterialPrice
     * @return
     */
    IPage<JbRawMaterialPrice> pageList(PageParam page, JbRawMaterialPrice jbRawMaterialPrice);

    /**
     * 原材料新增
     * @param jbRawMaterialPrice
     * @return
     */
    Boolean saveInfo(JbRawMaterialPrice jbRawMaterialPrice);

    /**
     * 导入
     * @param jbRawMaterialPrice
     * @return
     */
    Boolean importData(List<JbMaterialPriceImportAdd> jbRawMaterialPrice);
    /**
     * 修改原料信息
     * @param jbRawMaterialPrices
     * @return
     */
    Boolean updateInfo(JbRawMaterialPrice jbRawMaterialPrices);

    /**
     * 批量更新价格
     * @param jbRawMaterialPrices
     * @return
     */
    Boolean batchUpdateInfo(List<JbMaterialPriceImportAdd> jbRawMaterialPrices);

    /**
     * 原材料审核
     * @param page
     * @param jbRawMaterialAudit
     * @return
     */
    IPage<JbRawMaterialAudit> auditList(PageParam page, JbRawMaterialAudit jbRawMaterialAudit);

    /**
     * 原材料审核记录
     * @param page
     * @param jbRawMaterialAuditRecord
     * @return
     */
    List<JbRawMaterialAuditRecord> auditRecrodList(PageParam page, JbRawMaterialAuditRecord jbRawMaterialAuditRecord);

    /**
     * 修改审核记录的状态
     * @param jbRawMaterialAudit
     * @return
     */
    Boolean updateAuditStatus(JbRawMaterialAudit jbRawMaterialAudit);
}
